import pygame
"""设置类"""


class Settings:
    """存放设置的类"""
    def __init__(self):
        """初始化游戏设置"""
        # 屏幕设置
        self.screen_width = 1200
        self.screen_height = 800
        # 背景颜色
        self.bg_color = (230, 230, 230)
        # 背景图片
        self.bg_image = pygame.image.load('bg.jpg')
        # 飞船移动速度
        self.ship_speed_factor = 2
        # 子弹设置
        self.bullet_speed_factor = 3
        self.bullet_width = 3
        self.bullet_height = 15
        self.bullet_color = (60, 60, 60)
        self.bullets_allowed = 20  # 屏幕上最大子弹数量

        self.alien_speed_factor = 1  # 外星人移动速度
        self.alien_drop_speed = 10  # 下降速度
        self.alien_direction = 1  # 方向 1:向右 -1：向左

        self.ship_limit = 3  # 玩家拥有的飞船数量

        # 以什么样的速度加快游戏节奏
        self.speedup_scale = 1.2

        # 计分(击落一个外星人得多少分)
        self.alien_points = 50

    def initialize_dynamic_settings(self):
        """ 初始化随游戏进行而变化的设置"""
        self.ship_speed_factor = 2
        self.bullet_speed_factor = 3
        self.alien_speed_factor = 1
        # fleet_direction为1表示向右;为-1 表示向左
        self.alien_direction = 1

    def increase_speed(self):
        self.alien_points *= self.speedup_scale  # 提高分数
        """ 提高速度设置"""
        self.ship_speed_factor *= self.speedup_scale
        self.bullet_speed_factor *= self.speedup_scale
        self.alien_speed_factor *= self.speedup_scale

